import { defineConfig } from 'vite';
import path from 'path';
import vue from '@vitejs/plugin-vue';
import AutoImport from 'unplugin-auto-import/vite';
import Components from 'unplugin-vue-components/vite';
import eslintPlugin from 'vite-plugin-eslint';
import StylelintPlugin from 'vite-plugin-stylelint';

export default defineConfig({
    plugins: [
        vue(),
        eslintPlugin(),
        StylelintPlugin({ fix: true }),
        /** 自动引入插件 */
        AutoImport({
            imports: ['vue', 'vue-router', 'pinia'],
            eslintrc: {
                enabled: false, // 需要更新时设置为true
                filepath: './.eslintrc-auto-import.json',
                globalsPropValue: true,
            },
            dts: 'typings/auto-imports.d.ts',
        }),
        /** 组件自动导入 */
        Components({
            dirs: ['src/components'],
        }),
    ],
    resolve: {
        alias: {
            '@': path.resolve(__dirname, 'src'),
        },
    },
    server: {
        port: 5173, // 设置服务启动端口号
        open: true, // 设置服务启动时是否自动打开浏览器
    },
    build: {
        assetsInlineLimit: 0, // 禁用图片转为base64，可以设置大小转换
    },
});
